﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections;

namespace The_Wumpers
{
	class Room
	{
		
		private Boolean containsBat;
		private Boolean containsPit;
		private Boolean containsWumpus;
		private Boolean northOpen;
		private Boolean northEastOpen;
		private Boolean northWestOpen;
		private Boolean southOpen;
		private Boolean southWestOpen;
		private Boolean southEastOpen;
        public int northWest;
        public int north;
        public int northEast;
        public int southWest;
		public int south;
        public int southEast;

       /*public Room(
		 public int SouthEast	Boolean northOpen,
			Boolean northWestOpen,
			Boolean northEastOpen,
			Boolean southOpen,
			Boolean southWestOpen,
			Boolean southEastOpen)
		{
			this.northOpen = northOpen;
			this.northEastOpen = northEastOpen;
			this.northWestOpen = northWestOpen;
			this.southOpen = southOpen;
			this.southEastOpen = southEastOpen;
			this.southWestOpen = southWestOpen;
		}*/

		public Boolean ContainsBat { get; set; }
		public Boolean ContainsPit { get; set; }

        public Boolean NorthWestOpen { get{return this.northWestOpen;}    set{this.northWestOpen = value; } }
		public Boolean NorthEastOpen { get{return this.northEastOpen;}    set{this.northEastOpen = value;} }
		public Boolean NorthOpen     { get{return this.northOpen;}        set{this.northOpen = value;} }
		public Boolean SouthOpen     { get{return this.southOpen;}        set{this.southOpen = value;} }
        public Boolean SouthWestOpen { get{return this.southWestOpen;}    set{this.southWestOpen = value; } }
        public Boolean SouthEastOpen { get{return this.southEastOpen;}    set{this.southEastOpen = value; } }
		public Boolean ContainsWumpus { get; set; }
        //bordering rooms
        public int NorthWest { get { return this.northWest; } set { this.northWest = value; } }
        public int North     { get { return this.north; }     set { this.north = value; } }
        public int NorthEast { get { return this.northEast; } set { this.northEast = value; } }
        public int SouthWest { get { return this.southWest; } set { this.southWest = value; } }
        public int South     { get { return this.south; }     set { this.south = value; } }
        public int SouthEast { get { return this.southEast; } set { this.southEast = value; } }

        public void PrintOutStats(int name)
        {
            Console.WriteLine("Room#: " + name + " NW:" + northWest + NorthWestOpen + " N:" + north + NorthOpen + 
            " NE:" + northEast + NorthEastOpen + " SW:" + SouthWest + SouthWestOpen + " S:" + South + SouthOpen + " SE:" + SouthEast + SouthEastOpen);
        }

	}
}
